/**
 * Project of Vehicle Routing Problem with Time Windows implements 
 * some of well-known algorithms for solving VRPTW and presents new 
 * one.
 *
 * @author Michal Drobny  
 */

package util;

/**
 * Interface Measurable represents a fact, that between objects implementing
 * this interface can be measured some kind of value like distance.
 * 
 * @author Michal Drobny
 * @date 16.10.2014
 *
 * @param <T>
 *            Generic type which represents type of object which implements this
 *            interface. Uses the same mechanism like Comparable.
 */
public interface Measurable<T> {

	/**
	 * Measures and gets specific kind of value between object implementing this
	 * interface and the object o.
	 * 
	 * @param o
	 *            The other object to measure
	 * @return The value
	 */
	Double getDistanceTo(T o);
}